﻿
namespace ATSV.Web
{
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.ComponentModel.DataAnnotations;
    using System.Data.Objects.DataClasses;
    using System.Linq;
    using System.ServiceModel.DomainServices.Hosting;
    using System.ServiceModel.DomainServices.Server;


    // The MetadataTypeAttribute identifies FotoSetMetadata as the class
    // that carries additional metadata for the FotoSet class.
    [MetadataTypeAttribute(typeof(FotoSet.FotoSetMetadata))]
    public partial class FotoSet
    {

        // This class allows you to attach custom attributes to properties
        // of the FotoSet class.
        //
        // For example, the following marks the Xyz property as a
        // required property and specifies the format for valid values:
        //    [Required]
        //    [RegularExpression("[A-Z][A-Za-z0-9]*")]
        //    [StringLength(32)]
        //    public string Xyz { get; set; }
        internal sealed class FotoSetMetadata
        {

            // Metadata classes are not meant to be instantiated.
            private FotoSetMetadata()
            {
            }

            [Include]
            public EntityCollection<GalerieItemSet> GalerieItemSets { get; set; }

            public int Id { get; set; }

            public string Name { get; set; }
            
            public Nullable<int> SpielerFoto_Foto_Id { get; set; }

            [Include]
            public SpielerSet SpielerSet { get; set; }

            public Nullable<int> TeamFoto_Foto_Id { get; set; }

            [Include]
            public TeamSet TeamSet { get; set; }

            public Nullable<int> TrainerFoto_Foto_Id { get; set; }

            [Include]
            public TrainerSet TrainerSet { get; set; }

            public string URL { get; set; }
        }
    }

    // The MetadataTypeAttribute identifies GaestebuchItemSetMetadata as the class
    // that carries additional metadata for the GaestebuchItemSet class.
    [MetadataTypeAttribute(typeof(GaestebuchItemSet.GaestebuchItemSetMetadata))]
    public partial class GaestebuchItemSet
    {

        // This class allows you to attach custom attributes to properties
        // of the GaestebuchItemSet class.
        //
        // For example, the following marks the Xyz property as a
        // required property and specifies the format for valid values:
        //    [Required]
        //    [RegularExpression("[A-Z][A-Za-z0-9]*")]
        //    [StringLength(32)]
        //    public string Xyz { get; set; }
        internal sealed class GaestebuchItemSetMetadata
        {

            // Metadata classes are not meant to be instantiated.
            private GaestebuchItemSetMetadata()
            {
            }

            public byte[] Beitrag { get; set; }

            public DateTime CreateDate { get; set; }

            public string Email { get; set; }

            public int Id { get; set; }

            public string Titel { get; set; }

            public string Username { get; set; }
        }
    }

    // The MetadataTypeAttribute identifies GalerieItemSetMetadata as the class
    // that carries additional metadata for the GalerieItemSet class.
    [MetadataTypeAttribute(typeof(GalerieItemSet.GalerieItemSetMetadata))]
    public partial class GalerieItemSet
    {

        // This class allows you to attach custom attributes to properties
        // of the GalerieItemSet class.
        //
        // For example, the following marks the Xyz property as a
        // required property and specifies the format for valid values:
        //    [Required]
        //    [RegularExpression("[A-Z][A-Za-z0-9]*")]
        //    [StringLength(32)]
        //    public string Xyz { get; set; }
        internal sealed class GalerieItemSetMetadata
        {

            // Metadata classes are not meant to be instantiated.
            private GalerieItemSetMetadata()
            {
            }

            public DateTime CreateDate { get; set; }

            public Nullable<int> Foto_Id { get; set; }

            [Include]
            public FotoSet FotoSet { get; set; }

            public Nullable<int> GalerieGalerieItem_GalerieItem_Id { get; set; }

            [Include]
            public GalerieSet GalerieSet { get; set; }

            public int Id { get; set; }

            public string Kommentar { get; set; }

            public string Titel { get; set; }
        }
    }

    // The MetadataTypeAttribute identifies GalerieSetMetadata as the class
    // that carries additional metadata for the GalerieSet class.
    [MetadataTypeAttribute(typeof(GalerieSet.GalerieSetMetadata))]
    public partial class GalerieSet
    {

        // This class allows you to attach custom attributes to properties
        // of the GalerieSet class.
        //
        // For example, the following marks the Xyz property as a
        // required property and specifies the format for valid values:
        //    [Required]
        //    [RegularExpression("[A-Z][A-Za-z0-9]*")]
        //    [StringLength(32)]
        //    public string Xyz { get; set; }
        internal sealed class GalerieSetMetadata
        {

            // Metadata classes are not meant to be instantiated.
            private GalerieSetMetadata()
            {
            }

            public string Berschreibung { get; set; }

            [Include]
            public EntityCollection<GalerieItemSet> GalerieItemSets { get; set; }

            public int GalerieTypeId { get; set; }

            [Include]
            public GalerieTypeSet GalerieTypeSet { get; set; }

            public int Id { get; set; }

            public string Name { get; set; }
        }
    }

    // The MetadataTypeAttribute identifies GalerieTypeSetMetadata as the class
    // that carries additional metadata for the GalerieTypeSet class.
    [MetadataTypeAttribute(typeof(GalerieTypeSet.GalerieTypeSetMetadata))]
    public partial class GalerieTypeSet
    {

        // This class allows you to attach custom attributes to properties
        // of the GalerieTypeSet class.
        //
        // For example, the following marks the Xyz property as a
        // required property and specifies the format for valid values:
        //    [Required]
        //    [RegularExpression("[A-Z][A-Za-z0-9]*")]
        //    [StringLength(32)]
        //    public string Xyz { get; set; }
        internal sealed class GalerieTypeSetMetadata
        {

            // Metadata classes are not meant to be instantiated.
            private GalerieTypeSetMetadata()
            {
            }

            [Include]
            public EntityCollection<GalerieSet> GalerieSets { get; set; }

            public int Id { get; set; }

            public string Type { get; set; }
        }
    }

    // The MetadataTypeAttribute identifies NewsItemSetMetadata as the class
    // that carries additional metadata for the NewsItemSet class.
    [MetadataTypeAttribute(typeof(NewsItemSet.NewsItemSetMetadata))]
    public partial class NewsItemSet
    {

        // This class allows you to attach custom attributes to properties
        // of the NewsItemSet class.
        //
        // For example, the following marks the Xyz property as a
        // required property and specifies the format for valid values:
        //    [Required]
        //    [RegularExpression("[A-Z][A-Za-z0-9]*")]
        //    [StringLength(32)]
        //    public string Xyz { get; set; }
        internal sealed class NewsItemSetMetadata
        {

            // Metadata classes are not meant to be instantiated.
            private NewsItemSetMetadata()
            {
            }

            public string Body { get; set; }

            public DateTime CreateDate { get; set; }

            public int Id { get; set; }

            public string Link { get; set; }

            public string Titel { get; set; }
        }
    }

    // The MetadataTypeAttribute identifies ResourcenMetadata as the class
    // that carries additional metadata for the Resourcen class.
    [MetadataTypeAttribute(typeof(Resourcen.ResourcenMetadata))]
    public partial class Resourcen
    {

        // This class allows you to attach custom attributes to properties
        // of the Resourcen class.
        //
        // For example, the following marks the Xyz property as a
        // required property and specifies the format for valid values:
        //    [Required]
        //    [RegularExpression("[A-Z][A-Za-z0-9]*")]
        //    [StringLength(32)]
        //    public string Xyz { get; set; }
        internal sealed class ResourcenMetadata
        {

            // Metadata classes are not meant to be instantiated.
            private ResourcenMetadata()
            {
            }

            public int Id { get; set; }

            public string Name { get; set; }

            public string URL { get; set; }
        }
    }

    // The MetadataTypeAttribute identifies SpielerSetMetadata as the class
    // that carries additional metadata for the SpielerSet class.
    [MetadataTypeAttribute(typeof(SpielerSet.SpielerSetMetadata))]
    public partial class SpielerSet
    {

        // This class allows you to attach custom attributes to properties
        // of the SpielerSet class.
        //
        // For example, the following marks the Xyz property as a
        // required property and specifies the format for valid values:
        //    [Required]
        //    [RegularExpression("[A-Z][A-Za-z0-9]*")]
        //    [StringLength(32)]
        //    public string Xyz { get; set; }
        internal sealed class SpielerSetMetadata
        {

            // Metadata classes are not meant to be instantiated.
            private SpielerSetMetadata()
            {
            }

            [Include]
            public EntityCollection<FotoSet> FotoSets { get; set; }

            public int Id { get; set; }

            public int Jahrgang { get; set; }

            public string Name { get; set; }

            public int TeamId { get; set; }

            [Include]
            public TeamSet TeamSet { get; set; }

            public string Vorname { get; set; }
        }
    }

    // The MetadataTypeAttribute identifies SpielerSetMetadata as the class
    // that carries additional metadata for the SpielerSet class.
    [MetadataTypeAttribute(typeof(LigaSet.LigaSetMetadata))]
    public partial class LigaSet
    {

        // This class allows you to attach custom attributes to properties
        // of the SpielerSet class.
        //
        // For example, the following marks the Xyz property as a
        // required property and specifies the format for valid values:
        //    [Required]
        //    [RegularExpression("[A-Z][A-Za-z0-9]*")]
        //    [StringLength(32)]
        //    public string Xyz { get; set; }
        internal sealed class LigaSetMetadata
        {

            // Metadata classes are not meant to be instantiated.
            private LigaSetMetadata()
            {
            }

            public int Id { get; set; }

            public string Name { get; set; }

            [Include]
            public TeamSet TeamSets { get; set; }

            public string URL { get; set; }

        }
    }

    // The MetadataTypeAttribute identifies SponsorSetMetadata as the class
    // that carries additional metadata for the SponsorSet class.
    [MetadataTypeAttribute(typeof(SponsorSet.SponsorSetMetadata))]
    public partial class SponsorSet
    {

        // This class allows you to attach custom attributes to properties
        // of the SponsorSet class.
        //
        // For example, the following marks the Xyz property as a
        // required property and specifies the format for valid values:
        //    [Required]
        //    [RegularExpression("[A-Z][A-Za-z0-9]*")]
        //    [StringLength(32)]
        //    public string Xyz { get; set; }
        internal sealed class SponsorSetMetadata
        {

            // Metadata classes are not meant to be instantiated.
            private SponsorSetMetadata()
            {
            }

            public int Id { get; set; }

            public string LogoURL { get; set; }

            public string Name { get; set; }

            public string URL { get; set; }
        }
    }

    // The MetadataTypeAttribute identifies TeamSetMetadata as the class
    // that carries additional metadata for the TeamSet class.
    [MetadataTypeAttribute(typeof(TeamSet.TeamSetMetadata))]
    public partial class TeamSet
    {

        // This class allows you to attach custom attributes to properties
        // of the TeamSet class.
        //
        // For example, the following marks the Xyz property as a
        // required property and specifies the format for valid values:
        //    [Required]
        //    [RegularExpression("[A-Z][A-Za-z0-9]*")]
        //    [StringLength(32)]
        //    public string Xyz { get; set; }
        internal sealed class TeamSetMetadata
        {

            // Metadata classes are not meant to be instantiated.
            private TeamSetMetadata()
            {
            }

            [Include]
            public EntityCollection<FotoSet> FotoSets { get; set; }

            public int Id { get; set; }

            public string Name { get; set; }

            [Include]
            public EntityCollection<SpielerSet> SpielerSets { get; set; }

            public int TeamType_Id { get; set; }

            [Include]
            public TeamTypeSet TeamTypeSet { get; set; }

            public int TrainerId { get; set; }

            [Include]
            public TrainerSet TrainerSet { get; set; }

            public string Tabelle { get; set; }

            public string Ergebnisse { get; set; }

            public string Spielplan { get; set; }
            
            public string Statistik { get; set; }
        }
    }

    // The MetadataTypeAttribute identifies TeamTypeSetMetadata as the class
    // that carries additional metadata for the TeamTypeSet class.
    [MetadataTypeAttribute(typeof(TeamTypeSet.TeamTypeSetMetadata))]
    public partial class TeamTypeSet
    {

        // This class allows you to attach custom attributes to properties
        // of the TeamTypeSet class.
        //
        // For example, the following marks the Xyz property as a
        // required property and specifies the format for valid values:
        //    [Required]
        //    [RegularExpression("[A-Z][A-Za-z0-9]*")]
        //    [StringLength(32)]
        //    public string Xyz { get; set; }
        internal sealed class TeamTypeSetMetadata
        {

            // Metadata classes are not meant to be instantiated.
            private TeamTypeSetMetadata()
            {
            }

            public int Id { get; set; }

            [Include]
            public EntityCollection<TeamSet> TeamSets { get; set; }

            public string Type { get; set; }
        }
    }

    // The MetadataTypeAttribute identifies TrainerSetMetadata as the class
    // that carries additional metadata for the TrainerSet class.
    [MetadataTypeAttribute(typeof(TrainerSet.TrainerSetMetadata))]
    public partial class TrainerSet
    {

        // This class allows you to attach custom attributes to properties
        // of the TrainerSet class.
        //
        // For example, the following marks the Xyz property as a
        // required property and specifies the format for valid values:
        //    [Required]
        //    [RegularExpression("[A-Z][A-Za-z0-9]*")]
        //    [StringLength(32)]
        //    public string Xyz { get; set; }
        internal sealed class TrainerSetMetadata
        {

            // Metadata classes are not meant to be instantiated.
            private TrainerSetMetadata()
            {
            }

            [Include]
            public EntityCollection<FotoSet> FotoSets { get; set; }

            public int Id { get; set; }

            public string Name { get; set; }

            [Include]
            public EntityCollection<TeamSet> TeamSets { get; set; }

            public string Vorname { get; set; }
        }
    }
}
